1. Technology Field
The present invention generally relates to a flash memory storage system, and more particularly, to a flash memory storage system with a function of anti-falsifying data, and a flash memory controller and a method for anti-falsifying data thereof.
2. Description of Related Art
Users have been gradually used to electronic purse (e-purse) and prepayment. Correspondingly, smart cards have been more and more widely used. A typical smart card is an integrated circuit (IC) chip allowing the user to executing a certain operation as predetermined. Such a smart card usually includes a microprocessor, a card operation system, a security module, and a memory unit. The smart card is adapted for providing calculation, encryption, two-way communication, and security functions, so that the smart card is capable of providing a protection to the data stored therein in addition to the function of saving the data. A subscriber identification module used in a GSM (global system for mobile communication) cellular phone is an exemplified application of the smart card. Generally speaking, a smart card has very limited storage capacity due to the limited scales of ICs therein.
A memory card is a data storage equipment and which usually uses a NAND flash memory as its storage medium. A NAND flash memory is rewritable and erasable, and data stored in a NAND flash memory is retained even when no power is supplied to the NAND flash memory. In addition, along with the advancement of the fabricating technique, a NAND flash memory offers many other advantages, such as small volume, high access speed, and low power consumption, etc. Thus, in recent years, people in the industry have been trying to integrate smart card with large-capacity memory card in order to increase the storage capacity of smart card.
However, when a smart card and a memory card are integrated, security data is stored in the memory card but not in the original IC chip. Accordingly, how to ensure the security of data stored in the memory card is the key of whether the application can succeed. For example, if a user deposits $1000 in a smart card (for example, a prepaid card used in a shop) which uses a memory card as its storage medium and uses this smart card to make a payment, since the memory card is an independent circuit, the user can make a hard copy of the data in the memory card after the user determines the position of the memory card in the smart card. After the payment is made, the user can store the hard copy back into the memory card to refresh the value in the memory card. Thereby, how to protect the security of data in a flash memory is one of the most focused subjects in the industry.